﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace V82.ОбщиеМодули
{
	public partial class ЗаймыРаботникам
	{

		public object ПечатьДоговораЗайма(/*Ссылка*/)
		{
			//ТабДокумент = Новый ТабличныйДокумент;
			//ИмяДокумента = Ссылка.Метаданные().Имя;
			//СтруктураДляПечати = Документы[ИмяДокумента].ПолучитьСтруктуруДляПечати(Ссылка);
			//Запрос = Новый Запрос;
			//Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
			//Запрос.УстановитьПараметр("Ссылка", Ссылка);
			//Запрос.УстановитьПараметр("Рубли", Константы.ВалютаРегламентированногоУчета.Получить());
			/*Запрос.Текст =
	"ВЫБРАТЬ РАЗРЕШЕННЫЕ
	|	ОтветственныеЛицаСрезПоследних.ФизическоеЛицо.Наименование КАК ФизическоеЛицоНаименование,
	|	ОтветственныеЛицаСрезПоследних.Должность.Наименование КАК Должность,
	|	ОтветственныеЛицаСрезПоследних.ФизическоеЛицо,
	|	ФизическиеЛица.Комментарий
	|ПОМЕСТИТЬ ВТДанныеОбОтветственномЛице
	|ИЗ
	|	РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(
	|			&Дата,
	|			СтруктурнаяЕдиница = &Организация
	|				И ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель)) КАК ОтветственныеЛицаСрезПоследних
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
	|		ПО ОтветственныеЛицаСрезПоследних.ФизическоеЛицо = ФизическиеЛица.Ссылка
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ФизЛица.Ссылка КАК ФизЛицо
	|ПОМЕСТИТЬ ФизЛица
	|ИЗ
	|	Справочник.ФизическиеЛица КАК ФизЛица
	|ГДЕ
	|	ФизЛица.Ссылка В(&ФизЛицо)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	&Дата КАК Дата,
	|	&Номер КАК Номер,
	|	ВЫРАЗИТЬ(Организации.НаименованиеПолное КАК СТРОКА(300)) КАК НазваниеОрганизации,
	|	ФизЛица.ФизЛицо,
	|	&ПроцентЗаПользованиеЗаймом КАК ПроцентЗаПользованиеЗаймом,
	|	&НачалоПогашения КАК НачалоПогашения,
	|	&СрокПогашения КАК СрокПогашения,
	|	&ПорядокПогашенияЗайма КАК ПорядокПогашенияЗайма,
	|	ВЫБОР
	|		КОГДА &ВалютаДокумента = &Рубли
	|			ТОГДА ""руб.""
	|		ИНАЧЕ &ВалютаДокумента
	|	КОНЕЦ КАК НаименованиеВалюты,
	|	&СуммаЗайма КАК СуммаЗайма,
	|	ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, ФизЛица.ФизЛицо.Наименование) КАК Работник,
	|	ПаспортныеДанныеФизЛицСрезПоследних.ДокументВид.Наименование КАК ДокументВид,
	|	ПаспортныеДанныеФизЛицСрезПоследних.ДокументСерия,
	|	ПаспортныеДанныеФизЛицСрезПоследних.ДокументНомер,
	|	КонтактнаяИнформация.Представление КАК АдресОрганизации,
	|	АдресПоПропискеФизЛицо.Представление КАК АдресПоПропискеФизЛица,
	|	ВЫБОР
	|		КОГДА ФизЛица.ФизЛицо.Пол = ЗНАЧЕНИЕ(Перечисление.ПолФизическихЛиц.Женский)
	|			ТОГДА ""ая""
	|		ИНАЧЕ ""ый""
	|	КОНЕЦ КАК Окончание,
	|	ОтветственныеЛицаОрганизацийСрезПоследних.Должность КАК ДолжностьРуководителя,
	|	ЕСТЬNULL(ФИОФизЛиц.Фамилия + ВЫБОР
	|			КОГДА ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) <> """"
	|				ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) + "".""
	|			ИНАЧЕ """"
	|		КОНЕЦ + ВЫБОР
	|			КОГДА ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) <> """"
	|				ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) + "".""
	|			ИНАЧЕ """"
	|		КОНЕЦ, ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицоНаименование) КАК ФИОРуководителя
	|ИЗ
	|	ФизЛица КАК ФизЛица
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Организации КАК Организации
	|		ПО (Организации.Ссылка = &Организация)
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&Дата, ФизЛицо В (&ФизЛицо)) КАК ФИОФизЛицСрезПоследних
	|		ПО ФизЛица.ФизЛицо = ФИОФизЛицСрезПоследних.ФизЛицо
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних(&Дата, ФизЛицо В (&ФизЛицо)) КАК ПаспортныеДанныеФизЛицСрезПоследних
	|		ПО ФизЛица.ФизЛицо = ПаспортныеДанныеФизЛицСрезПоследних.ФизЛицо
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
	|		ПО (Организации.Ссылка = КонтактнаяИнформация.Объект)
	|			И (КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
	|			И (КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресОрганизации))
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресПоПропискеФизЛицо
	|		ПО (ФизЛица.ФизЛицо = АдресПоПропискеФизЛицо.Объект)
	|			И (АдресПоПропискеФизЛицо.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
	|			И (АдресПоПропискеФизЛицо.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица))
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТДанныеОбОтветственномЛице КАК ОтветственныеЛицаОрганизацийСрезПоследних
	|		ПО (ИСТИНА)
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(
	|				&Дата,
	|				ФизЛицо В
	|					(ВЫБРАТЬ
	|						ДанныеОбОтветственномЛице.ФизическоеЛицо
	|					ИЗ
	|						ВТДанныеОбОтветственномЛице КАК ДанныеОбОтветственномЛице)) КАК ФИОФизЛиц
	|		ПО (ИСТИНА)";*/
			//Макет = ПолучитьОбщийМакет("ДоговорЗайма");
			//ПервыйЛист =Истина;
			//Выборка = Запрос.Выполнить().Выбрать();
			while(true/*Выборка.Следующий()*/)
			{
				if(true/*НЕ ПервыйЛист*/)
				{
					//ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
				}
				//Макет.Параметры.Заполнить(Выборка);
				//Макет.Параметры.Дата = Формат(Ссылка.Дата,"ДЛФ=DD");
				//Макет.Параметры.ОкончаниеПогашения = Формат(ДобавитьМесяц(Выборка.НачалоПогашения, Выборка.СрокПогашения),"ДЛФ=DD");
				//Макет.Параметры.РабочаяДата = ОбщегоНазначения.ПолучитьРабочуюДату();
				//Макет.Параметры.ТекстПорядка = НРег(Выборка.ПорядокПогашенияЗайма);
				//Макет.Параметры.НазваниеОрганизации = СокрЛП(Макет.Параметры.НазваниеОрганизации);
				//ТабДокумент.Вывести(Макет);
			}
			return null;
		}
		// ПечатьДоговораЗайма()

		public object ПечатьИсторияПогашенияЗайма(/*Ссылка*/)
		{
			//ИмяДокумента = Ссылка.Метаданные().Имя;
			//ТабДокумент = Новый ТабличныйДокумент;
			//Макет = ПолучитьОбщийМакет("ИсторияПогашенияЗайма");
			//СекцияШапка = Макет.ПолучитьОбласть("Шапка");
			//СекцияМесяц = Макет.ПолучитьОбласть("Месяц");
			//СекцияИтогоПогашено = Макет.ПолучитьОбласть("ИтогоПогашено");
			//СекцияПодвал = Макет.ПолучитьОбласть("Подвал");
			//СтруктураДляПечати = Документы[ИмяДокумента].ПолучитьСтруктуруДляПечати(Ссылка);
			//Запрос = Новый Запрос;
			//Запрос.УстановитьПараметр("Ссылка",Ссылка);
			//Запрос.УстановитьПараметр("Рубли",Константы.ВалютаРегламентированногоУчета.Получить());
			/*Запрос.Текст =
	"ВЫБРАТЬ
	|	ФизЛица.Ссылка КАК ФизЛицо
	|ПОМЕСТИТЬ ФизЛица
	|ИЗ
	|	Справочник.ФизическиеЛица КАК ФизЛица
	|ГДЕ
	|	ФизЛица.Ссылка В(&ФизЛицо)
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	&Дата КАК Дата,
	|	&Номер КАК Номер,
	|	ФизЛица.ФизЛицо,
	|	&ПроцентЗаПользованиеЗаймом КАК ПроцентЗаПользованиеЗаймом,
	|	&НачалоПогашения КАК НачалоПогашения,
	|	&СрокПогашения КАК СрокПогашения,
	|	&ПорядокПогашенияЗайма КАК ПорядокПогашенияЗайма,
	|	ВЫБОР
	|		КОГДА &ВалютаДокумента = &Рубли
	|			ТОГДА ""руб.""
	|		ИНАЧЕ &ВалютаДокумента
	|	КОНЕЦ КАК НаименованиеВалюты,
	|	&СуммаЗайма,
	|	ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, ФизЛица.ФизЛицо.Наименование) КАК Работник
	|ИЗ
	|	ФизЛица КАК ФизЛица
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(, ФизЛицо В (&ФизЛицо)) КАК ФИОФизЛицСрезПоследних
	|		ПО ФизЛица.ФизЛицо = ФИОФизЛицСрезПоследних.ФизЛицо";*/
			//ПервыйЛист = Истина;
			//ВыборкаПоДокументу = Запрос.Выполнить().Выбрать();
			while(true/*ВыборкаПоДокументу.Следующий()*/)
			{
				if(true/*НЕ ПервыйЛист*/)
				{
					//ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
				}
				//СекцияШапка.Параметры.Заполнить(ВыборкаПоДокументу);
				//ПериодПогашения = "";
				if(true/*ВыборкаПоДокументу.ПорядокПогашенияЗайма = Перечисления.ПорядокПогашенияЗаймаПроцентов.Ежемесячно*/)
				{
					//УниверсальныеМеханизмы.Просклонять(глЗначениеПеременной("глКомпонентаСклоненияФИО"), НРег(Формат(ВыборкаПоДокументу.НачалоПогашения,"ДФ='ММММ гггг'")), 2, , ПериодПогашения);
				}
				//СекцияШапка.Параметры.ОписаниеНачалаПогашения = НРег(ВыборкаПоДокументу.ПорядокПогашенияЗайма) + ?(ВыборкаПоДокументу.ПорядокПогашенияЗайма = Перечисления.ПорядокПогашенияЗаймаПроцентов.Ежемесячно," с " + ПериодПогашения + " г.","");
				//ВалютаУчета = ?(СтруктураДляПечати.ОтражатьВУправленческомУчете,Константы.ВалютаУправленческогоУчета.Получить(),Константы.ВалютаРегламентированногоУчета.Получить());
				//СекцияШапка.Параметры.ИмяВалютыУчета = ВалютаУчета.НаименованиеПолное;
				//ТабДокумент.Вывести(СекцияШапка);
				if(true/*СтруктураДляПечати.ОтражатьВУправленческомУчете*/)
				{
					//ИмяРегистраУчета = "ПогашениеЗаймовРаботниками";
					/*ТекстНачислений = 
			"ВЫБРАТЬ
			|	СУММА(УправленческиеНачисления.Результат) КАК Результат,
			|	УправленческиеНачисления.ПериодРегистрации КАК ПериодРегистрации
			|ИЗ
			|	РегистрРасчета.УправленческиеНачисления КАК УправленческиеНачисления
			|ГДЕ
			|	УправленческиеНачисления.ФизЛицо = &ФизЛицо
			|
			|СГРУППИРОВАТЬ ПО
			|	УправленческиеНачисления.ПериодРегистрации";*/
				}
				/*Запрос.Текст =
		"ВЫБРАТЬ
		|	ПогашениеЗаймов.Период КАК Период,
		|	ПогашениеЗаймов.ПроцентыПриход КАК ПроцентыПриход,
		|	ПогашениеЗаймов.ПроцентыКонечныйОстаток КАК ПроцентыКонечныйОстаток,
		|	ПогашениеЗаймов.ПроцентыРасход КАК ПроцентыРасход,
		|	ПогашениеЗаймов.ОсновнойДолгРасход КАК ОсновнойДолгРасход,
		|	ПогашениеЗаймов.ОсновнойДолгКонечныйОстаток КАК ОсновнойДолгКонечныйОстаток,
		|	ПогашениеЗаймов.ПроцентыКонечныйОстаток + ПогашениеЗаймов.ОсновнойДолгКонечныйОстаток КАК ОстатокЗайма,
		|	НачисленныеСуммы.Результат КАК Зарплата
		|ИЗ
		|	РегистрНакопления." + ИмяРегистраУчета + ".ОстаткиИОбороты(
		|		,
		|		,
		|		Месяц,
		|		,
		|		ДоговорЗайма = &Ссылка
		|		    И ФизЛицо = &ФизЛицо) КАК ПогашениеЗаймов
		|		ЛЕВОЕ СОЕДИНЕНИЕ (" + ТекстНачислений + ") КАК НачисленныеСуммы
		|		ПО ПогашениеЗаймов.Период = НачисленныеСуммы.ПериодРегистрации
		|
		|УПОРЯДОЧИТЬ ПО
		|	Период
		|ИТОГИ
		|	СУММА(ПроцентыРасход),
		|	СУММА(ОсновнойДолгРасход)
		|ПО
		|	ОБЩИЕ";*/
				//Запрос.УстановитьПараметр("ФизЛицо", ВыборкаПоДокументу.ФизЛицо);
				//Выборка = Запрос.Выполнить().Выбрать();
				while(true/*Выборка.Следующий()*/)
				{
					if(true/*Выборка.ТипЗаписи() = ТипЗаписиЗапроса.ОбщийИтог*/)
					{
						//СекцияИтогоПогашено.Параметры.Заполнить(Выборка);
					}
				}
				/*;
		СекцияИтогоПогашено.Параметры.ДатаОкончания = Формат(ДобавитьМесяц(ВыборкаПоДокументу.НачалоПогашения, ВыборкаПоДокументу.СрокПогашения),"ДЛФ=DD");*/
				//ТабДокумент.Вывести(СекцияИтогоПогашено);
				//ТабДокумент.Вывести(СекцияПодвал);
			}
			return null;
		}
		// ПечатьИсторияПогашенияЗайма()
	}
}
